Conventionally, a NAND type flash memory which is a nonvolatile memory is widely used as an auxiliary storage apparatus of an information processing system. The NAND type flash memory stores data by accumulating a charge on a floating gate disposed in a MOS transistor in a memory cell. On the other hand, a nonvolatile memory of a type that stores data by changing a physical property of a storage element in a memory cell is receiving attention due to its advantages such as high speed performance and random access capability. Examples of such a nonvolatile memory include a phase-change RAM (PCRAM) and a resistance RAM (ReRAM). In addition, nonvolatile memories that use a magnetic material, such as a magnetoresistive RAM (MRAM) and a spin transfer torque-MRAM (STT-MRAM), also correspond to such a nonvolatile memory.
The PCRAM stores data by changing the electrical resistance of a storage element which is a phase-change element and is disposed in a memory cell. Specifically, storage operation is performed by bringing the state of the storage element into a crystalline state or an amorphous state and utilizing a difference in electrical resistance made thereby. The storage element has a low resistance when in the crystalline state, and has a high resistance when in the amorphous state. Here, the operation of bringing the storage element into a low-resistance state is represented as a set operation, and the operation of bringing the storage element into a high-resistance state is represented as a reset operation. By performing reset and set operations on the memory cell, writing of data in the PCRAM is performed.
To change the state of the storage element, there is a need to heat the storage element by applying a voltage (write voltage) to the storage element to allow a current to flow therethrough. By changing a temperature and a heating time condition at that time, the state of the storage element is brought into a crystalline state or an amorphous state. When a substantially melting point temperature and a short-time heating condition are set for the storage element, the storage element goes into an amorphous state and thus a reset operation is performed. On the other hand, when a crystallization temperature which is a lower temperature than a melting point and a long-time heating condition are set, the storage element is crystallized and thus a set operation is performed. When the crystallization temperature of the storage element exceeds an allowable range and varies in such a PCRAM, the storage element cannot be sufficiently crystallized, by which a set operation may not be able to be performed. In view of this, there is proposed a system in which upon a set operation, a storage element is brought to a substantially melting point and then a write voltage is gradually reduced to slowly cool the storage element, by which even when the crystallization temperature varies, a set operation can be performed (see, for example, Patent Document 1).
As with the PCRAM, the ReRAM also stores data by changing the electrical resistance of a storage element disposed in a memory cell. The storage element of the ReRAM has two-layer structure including an insulating layer and a metal ion supplying layer. When a voltage is applied to the storage element, conductive filaments composed of metal ions which are supplied from the metal ion supplying layer are diffused into the insulating layer, going into a low-resistance state. On the other hand, when a reverse-polarity voltage is applied, the metal ions in the diffused conductive filaments return to the metal ion supplying layer, and thus, the storage element goes into a high-resistance state. Note that in the ReRAM, too, the operation of bringing the storage element into a low-resistance state is represented as a set operation, and the operation of bringing the storage element into a high-resistance state is represented as a reset operation. In such a ReRAM, there is known a phenomenon where the state of the storage element is not stable immediately after performing reset and set operations which are data write operation. This is a phenomenon where the resistance value of the storage element immediately after writing data becomes a value near a threshold value that determines whether the state is a low-resistance or high-resistance value, and with the passage of time the resistance value settles to a normal resistance value (see, for example, Non-Patent Document 1).